package cn.vplay.services.impl;

import java.util.List;

import cn.vplay.dao.MovieDao;
import cn.vplay.beans.Movie;
import cn.vplay.services.MovieService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class MovieServiceImpl implements MovieService {

	@Autowired
	private MovieDao movieDao;

	//动态添加电影
	@Override
	public int insertSelective(Movie movie) {
		return movieDao.insertSelective(movie);
	}

	//通过用户userid动态条件分页查询视频信息
	@Override
	public List<Movie> getMoviesByUserID(Movie movie) {
		int count = this.movieDao.queryMovieCount(movie);
		movie.setTotalRecords(count);
		return this.movieDao.selectMovies(movie);
	}

	//通过电影id查询电影
	@Override
	public Movie getMoviesByID(String movieId) {
		return this.movieDao.selectByPrimaryKey(movieId);
	}

	//查询首页轮播电影列表
	@Override
	public List<Movie> getMovieBySliderImage() {
		return this.movieDao.selectSliderMV();
	}

	//通过电影类别查询电影（用于首页界面切换）
	@Override
	public List<Movie> getMovieByCategory(long l) {
		return this.movieDao.selectByCategory(l);
	}

	//查询所有影片列表并降序排序
	@Override
	public List<Movie> selectByRankings() {
		return this.movieDao.selectByRankings();
	}

	//通过影片种类查询影片列表并降序排序
	@Override
	public List<Movie> selectByRankingsByCategory(Long category) {
		return this.movieDao.selectByRankingsByCategory(category);
	}

	///通过电影id模糊查询电影列表
	@Override
	public List<Movie> getMoviesByIDs(String mvs) {
		return this.movieDao.getMoviesByIDs(mvs);
	}

	// 通过电影id动态更新电影
	@Override
	public void updateByCondiction(Movie movies) {
		this.movieDao.updateByPrimaryKeySelective(movies);
	}

	//模糊查询电影列表，通过用户id（电影名称/电影产地/导演/演员/电影简介信息）
	@Override
	public List<Movie> searchMovie(Movie movie) {
		int count = this.movieDao.searchMovieCount(movie);
		movie.setTotalRecords(count);
		return this.movieDao.searchMoive(movie);
	}



}
